The subject application is directed generally to color calibration relative to printing devices. The application is particularly applicable to calibration employing measurement of large number of color samples when all of such measurements are not completed at once.
Document rendering devices include printers which function to take electronic documents and reduce them to tangible output. Earlier printers rendered documents in black and white. Color printing, which is substantially more complex, extremely cost prohibitive, and limited to commercial applications. With the advancement of printing technology, color printing has become ubiquitous, and many options exist relative to color printing devices.
Display devices, such as monitors, generate visual output from visible light. Such devices generate various colors by mixing of additive primary colors. Many primary color sets exist. A popular additive color space in use today includes red, green and blue (RGB), Printers, on the other hand, generate tangible output by use of inks that function to selectively absorb colors from spectral light. Thus, printers employ color spaces formed from subtractive primaries. A subtractive primary in widespread use today in the printing industry is cyan, magenta and yellow (CMY). Various combinations of these basic colors can generate a large array of colors, referred to as a gamut. The gamut of a printer is frequently increased by addition of black ink (K), which color space is referred to as CMYK.
Modern document generation is completed with computers, operating in conjunction with software, such as word processing software, drawing applications, photo-editing applications, computer aided design applications, and the like. A computer employs a processor and memory, and a human interface is formed from a visual output display, and an input such as a keyboard, scanner, pointing device or network connection. Images are generated on the display, which is an active device generating output in an additive primary color space such as RGB. When a printout is desired, that color space must be converted to a subtractive color space for the printer, such as CMYK. Such conversion ideally maintains as much integrity between an image on a visual display terminal and that same image once it is printed out. Conversions are typically completed by formulas or use of empirically acquired conversion values stored in a lookup table, or some combination of the two.
Each printer has its own color gamut, which color gamut is defined in accordance with mechanical properties of the rendering mechanism, such as ink deposition technology. A printer's color gamut is also affected by other factors. Such factors include a number of primary colors that are used. Some printers augment the color set by additions of colors such as light cyan or light magenta to increase the color gamut. Other factors include the particular ink compositions, or variations within inks resulting from different batches or manufacturers.
In order to maintain as much integrity as possible between images encoded in different color spaces given the afore-noted factors, it is advantageous to generate a color conversion based on actual measurements taken from printed outputs. One such calibration process employs a printout taken from the printer, which printout has a number of color patches corresponding to different colors taken from the printer gamut. Each patch is associated with a value in a multidimensional color space. A color sensitive scanner acquires visual readings of each of these patches. Comparison of measured values facilitates generation of conversion factors between the color space of a display device and a color space of a printing device. In order to be accurate, many different measurements need to be taken. The greater number the measurements, the greater the resultant conversion will be between the two color spaces. However, securing so many measurements requires allocation of a single, large consecutive block of scanner activity, which may be a human-intensive activity, as well as occupying computer hardware for large blocks of time. Failure to complete the process requires that it be restarted from the beginning.